// package com.study.ext;
//
// import lombok.extern.slf4j.Slf4j;
// import org.springframework.web.WebApplicationInitializer;
// import org.springframework.web.context.ContextLoaderListener;
// import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
// import org.springframework.web.servlet.DispatcherServlet;
//
// import javax.servlet.*;
//
// /**
//  * 参考自 http://t.zoukankan.com/Lambquan-p-12071358.html
//  * <p>
//  * 传统的 web.xml 示例：
//  * <pre>
//  * <servlet>
//  *   <servlet-name>dispatcher</servlet-name>
//  *   <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
//  *   <init-param>
//  *     <param-name>contextConfigLocation</param-name>
//  *     <param-value>/WEB-INF/spring/dispatcher-config.xml</param-value>
//  *   </init-param>
//  *   <load-on-startup>1</load-on-startup>
//  * </servlet>
//  * <servlet-mapping>
//  *   <servlet-name>dispatcher</servlet-name>
//  *   <url-pattern>/</url-pattern>
//  * </servlet-mapping>
//  * </pre>
//  *
//  * @author Administrator
//  * @date 2022-08-24
//  */
// @Slf4j
// // @Component
// public class MyWebApplicationInitializer implements WebApplicationInitializer {
//     @Override
//     public void onStartup(ServletContext servletContext) throws ServletException {
//         log.info("调用了 MyWebApplicationInitializer 的 onStartup() 方法");
//
//         /*XmlWebApplicationContext xmlContext = new XmlWebApplicationContext();
//         xmlContext.setConfigLocation("/WEB-INF/spring/dispatcher-config.xml");
//         ServletRegistration.Dynamic dispatcher = servletContext.addServlet("dispatcher", new DispatcherServlet(xmlContext));
//         dispatcher.setLoadOnStartup(1);
//         dispatcher.addMapping("/");*/
//
//         AnnotationConfigWebApplicationContext rootContext = new AnnotationConfigWebApplicationContext();
//         rootContext.register(AppConfig.class);
//         servletContext.addListener(new ContextLoaderListener(rootContext));
//         AnnotationConfigWebApplicationContext dispatcherContext = new AnnotationConfigWebApplicationContext();
//         dispatcherContext.register(DispatcherConfig.class);
//         ServletRegistration.Dynamic dispatcher = servletContext.addServlet("dispatcher", new DispatcherServlet(dispatcherContext));
//         dispatcher.setLoadOnStartup(1);
//         dispatcher.addMapping("/");
//     }
//
//     class AppConfig {
//     }
//
//     class DispatcherConfig {
//     }
// }
